home *** CD-ROM | disk | FTP | other *** search
/ Compute! Gazette 1985 October / 1985-10.d64 / atom shoot (.txt) < prev    next >
Commodore BASIC  |  2022-09-20  |  2KB  |  60 lines

  1. 10 print"[147]":poke53281,0:poke53280,0:kb=198:poke650,128:clr:zz=1700:rem 64 specific
  2. 20 dima%(15,10),b%(15,10),m(50),n(50):dn$="":fora=1to33:dn$=dn$+"":next
  3. 30 ns=25:gosub460:fora=1to15:m(a)=a*2+1:n(a)=2:next:fora=16to25:m(a)=32
  4. 40 n(a)=(a-15)*2+1:next:fora=26to40:m(a)=31-(a-26)*2:n(a)=22:next
  5. 50 fora=41to50:m(a)=2:n(a)=21-(a-41)*2:next:fora=0to3:readdx(a),dy(a):next
  6. 60 fora=1to7:readmr(a):next:data -1,0,1,0,0,-1,0,1,27,78,27,78,177,57,147
  7. 70 fora=1to4:readms(a):next:data110,109,110,109:gosub420
  8. 80 fors=1tons:s$=chr$(64+s):printdn$"[154][146] what  [157][157][157][157][157][157]now?  ":gosub590
  9. 90 geta$:on-(a$="g")-2*(a$="s")-3*(a$="q")goto100,270,330:goto90
  10. 100 print"";:fora=65to79:printchr$(a)" ";:next:pokekb,0
  11. 110 printdn$"[154] which[157][157][157][157][157]column"
  12. 120 geta$:ifa$<"a"ora$>"o"then120
  13. 130 x1=asc(a$)-64:gosub560
  14. 140 print"";:fora=0to9:printright$(str$(a),1);"[157]";:next:pokekb,0
  15. 150 printdn$"[154] which[157][157][157][157][157] row  "
  16. 160 geta$:ifa$<"0"ora$>"9"then160
  17. 170 print"";:fora=1to20:print" [157]";:next:y1=val(a$)+1:w$="^"
  18. 180 print"   ";:fora=1to4:printchr$(ms(a))" ";:next:z=4:t1=x1:t2=y1:gosub490
  19. 190 x1=t1:y1=t2:gosub560:ifb%(x1,y1)<>0andmr(x)=a%(x1,y1)thens=s-1:next
  20. 200 b=54-s*2:ifa%(x1,y1)=mr(x)thenb%(x1,y1)=1:goto230
  21. 210 x1=x1*2+1:y1=y1*2+1:print"[155]";:n$="[166]":gosub410
  22. 220 printdn$"[154] missed[157][157][157][157][157][157]-"b/2"[157] ";:sc=sc-b/2:goto260
  23. 230 sc=sc+b:gosub570:x1=x1*2+1:y1=y1*2+1:print"[155]";:gosub410
  24. 240 printdn$"[154]"b"[157] pts [157][157][157][157][157][157]      ":g=g+1
  25. 250 ifg=25thensc=sc+200-s*5:print""spc(15)"you solved it!":gosub590:goto360
  26. 260 fortd=1tozz:next:s=s-1:next
  27. 270 z=50:w$=s$:gosub490
  28. 280 n$=s$:m=int((m(x)-1)/2)-(m(x)=2):n=int(n(x)/2)+(n(x)=22)
  29. 290 gosub390:gosub400:x1=m:y1=n:gosub390
  30. 300 nd=3*4^d:ifa%(x1,y1)<>0thend=((a%(x1,y1)andnd)/(4^d))
  31. 310 x1=x1+dx(d):y1=y1+dy(d):if(x1>0)and(x1<16)and(y1>0)and(y1<11)then300
  32. 320 m=x1+dx(d):n=y1+dy(d):print"";:gosub400:print"[158]";:next
  33. 330 print"[154]":forx=1to15:fory=1to10:x1=x:y1=y
  34. 340 ifa%(x1,y1)<>0andb%(x1,y1)=0thengosub570:x1=x1*2+1:y1=y1*2+1:gosub410
  35. 350 nexty,x
  36. 360 printdn$" play [157][157][157][157][157]again?":pokekb,0
  37. 370 geta$:on-(a$="y")-2*(a$="n")goto10,380:goto370
  38. 380 poke2025,0:print"[147]":end
  39. 390 d=-((x<=50)and(x>=41))-2*((x>25)and(x<41))-3*((x>=1)and(x<=15)):return
  40. 400 x1=m*2-2*dx(d)+1:y1=n*2-2*dy(d)+1:gosub410:return
  41. 410 print"";:fora=1toy1:print"";:next:printspc(x1)n$;:return
  42. 420 nm=25:fora=1tonm:b=mr(int(rnd(1)*4)+1)
  43. 430 c=int(rnd(1)*15)+1:d=int(rnd(1)*10)+1
  44. 440 ifa%(c,d)<>0then430
  45. 450 a%(c,d)=b:next:return
  46. 460 print"[147][155]":fora=1to10:print:print:print"";:forb=1to15:print"  [146]";
  47. 470 nextb,a
  48. 480 print dn$"g[146]uess[157][157][157][157][157]s[146]hoot[157][157][157][157][157]q[146]uit[157][157][157][157][154]score":return
  49. 490 print"[158]":x=1
  50. 500 x1=m(x):y1=n(x):n$=w$:gosub410
  51. 510 geta$:on-(a$=",")-2*(a$=".")-3*(a$=chr$(13))goto520,530,550:goto510
  52. 520 x=x-1-z*(x=1):goto540
  53. 530 x=x+1+z*(x=z)
  54. 540 n$=" ":gosub410:goto500
  55. 550 n$=" ":gosub410:return
  56. 560 print"";:fora=1to40:print" ";:next:return
  57. 570 fora=1to4:ifmr(a)=a%(x1,y1)thenp=a
  58. 580 next:n$=chr$(ms(p)):return
  59. 590 pokekb,0:x1=34:y1=20:n$="":gosub410:printsc"[157] ":return
  60.